//控制只能输入整数
function input_int(v) {
    v.value = v.value.replace(/[^\d]/g, '');
}
//控制只能输入小数
function input_float(v) {
    for (var i = v.value.length - 1; i >= 0; i--) {
        if (!/^\d*\.?\d{0,2}$/.test(v.value)) //只能输入两位小数
        {
            v.value = v.value.substr(0, v.value.length - 1);
        }
    }
}
/**
 * 判断是否不是空
 * 为空返回false
 * 不为空返回true
 * @param value
 */
function is_define(value) {
    if (value == null || value == "" || value == "undefined" || value == undefined || value == "null" || value == "(null)" || value == 'NULL' || typeof(value) == 'undefined') {
        return false;
    } else {
        value = value + "";
        value = value.replace(/\s/g, "");
        if (value == "") {
            return false;
        }
        return true;
    }
}

//json转字符串
function json2str(j) {
    return JSON.stringify(j);
}

//是否是json对象
function is_json(obj) {
    var isjson = typeof(obj) == "object" && Object.prototype.toString.call(obj).toLowerCase() == "[object object]" && !obj.length;
    return isjson;
}
//判断字符串是否在array中
function in_array(stringToSearch, arrayToSearch) {
    for (s = 0; s < arrayToSearch.length; s++) {
        thisEntry = arrayToSearch[s].toString();
        if (thisEntry == stringToSearch) {
            return true;
        }
    }
    return false;
}
//验证手机号
function checkMobile(mobile) {
    if (mobile.length == 0) {
        //baiyu alert('请输入手机号')
        return false;
    }
    if (mobile.length != 11) {
        //baiyu alert('请输入有效的手机号码！')
        return false;
    }
    var myreg = /^1[3456789]\d{9}$/;
    if (!myreg.test(mobile)) {
        return false;
    }
    return true;
}
/**
 * [checkPassword 验证密码和确认密码]
 * @param  {[string]} password	[密码]
 * @param  {[string]} repassword [重复密码]
 * @return {[boolean]}				[返回真假]
 */
function checkPassword(password, repassword) {
    if (password.length == 0) {
        //baiyu alert('请输入密码')
        return false;
    }
    if (typeof(repassword) != "undefined") {
        if (repassword.length == 0) {
            //baiyu alert('请输入确认密码')
            return false;
        }
        if (password != repassword) {
            //baiyu alert('请确认两次密码输入一致')
            return false;
        }
    }

    return true;
}
//验证密码 验证6-20位字母数字组合
function check_password(password) {
    var passwordreg = /^[A-Za-z0-9]{6,20}$/;
    if (!passwordreg.test(password)) {
        api.toast({
            msg: '请输入6-20位字母数字组合的密码！',
            duration: 2000,
            location: 'middle'
        });
        return false;
    }
    return true;
}
/**
 * [getLocalTime js将时间戳变为日期格式]
 * @param  {[type]} nS [时间戳]
 * @return {[type]}	 [description]
 */
function getLocalTime(nS) {
    return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:\d{1,2}$/, ' ');
}
/**
 * [validateIdCard 验证身份证合法性]
 * @param  {[type]} idCard [身份证号码]
 */
function IdentityCodeValid(idCard) {
    //15位和18位身份证号码的正则表达式
    var regIdCard = /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;

    //如果通过该验证，说明身份证格式正确，但准确性还需计算
    if (regIdCard.test(idCard)) {
        if (idCard.length == 18) {
            var idCardWi = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2); //将前17位加权因子保存在数组里
            var idCardY = new Array(1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2); //这是除以11后，可能产生的11位余数、验证码，也保存成数组
            var idCardWiSum = 0; //用来保存前17位各自乖以加权因子后的总和
            for (var i = 0; i < 17; i++) {
                idCardWiSum += idCard.substring(i, i + 1) * idCardWi[i];
            }

            var idCardMod = idCardWiSum % 11; //计算出校验码所在数组的位置
            var idCardLast = idCard.substring(17); //得到最后一位身份证号码

            //如果等于2，则说明校验码是10，身份证号码最后一位应该是X
            if (idCardMod == 2) {
                if (idCardLast == "X" || idCardLast == "x") {
                    tip = "恭喜通过验证啦！";
                    pass = true;
                } else {
                    tip = "身份证号码错误！";
                    pass = false;
                }
            } else {
                //用计算出的验证码与最后一位身份证号码匹配，如果一致，说明通过，否则是无效的身份证号码
                if (idCardLast == idCardY[idCardMod]) {
                    tip = "恭喜通过验证啦！";
                    pass = true;
                } else {
                    tip = "身份证号码错误！";
                    pass = false;
                }
            }
        }
    } else {
        tip = "身份证格式不正确！";
        pass = false;
    }
    if (!pass) {
        api.toast({
            msg: tip,
            duration: 2000,
            location: 'middle'
        });
    };
    return pass;
}
/**
 * 判断是否为姓名
 */
function check_name(name) {
    var rules = /^[\u4E00-\u9FA5\uf900-\ufa2d·s]{2,20}$/;
    if (!rules.test(name)) {
        api.toast({
            msg: '请输入正确姓名',
            duration: 2000,
            location: 'middle'
        });
        return false;
    }
    return false;
}
/**
 * [a 生成想要位数的随机数]
 * @param  {[type]} a [位数]
 * @return {[type]}   [随机数]
 */
function a(a) {
    var d,
        e,
        b = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",
        c = "";
    for (d = 0; a > d; d += 1)
        e = Math.random() * b.length, e = Math.floor(e), c += b.charAt(e);
    return c
}

/**
 * 验证邮箱
 */
function check_mail(mail) {　　
    var reg = new RegExp("^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$"); //正则表达式

    　　
    if (mail === "") { //输入不能为空
        　　　　 //alert("输入不能为空!");
        　　　　
        return false;　　
    } else if (!reg.test(mail)) { //正则验证不通过，格式不对
        　　　　 //alert("验证不通过!");
        　　　　
        return false;　　
    } else {　　　　 //alert("通过！");
        　　　　
        return true;　　
    }
}
